Support x32
authorAaron M. Ucko <ucko@debian.org>
Thu, 2 Dec 2021 02:37:42 +0000 (21:37 -0500)
committerAaron M. Ucko <ucko@debian.org>
Fri, 17 Oct 2025 15:26:19 +0000 (11:26 -0400)
Avoid picking up wrong inline assembly.

Gbp-Pq: Name support_x32

c++/include/corelib/impl/ncbi_atomic_defs.h
c++/src/build-system/configure
c++/src/build-system/configure.ac
c++/src/sra/readers/sra/wgsread.cpp

index 0b27f946fa56d2a01445613a7501ee3fc80c9a43..30ca025b2992ac16aef5695b985bac7b805e7d37 100644 (file)
@@ -120,7 +120,7 @@ extern "C" {
   (defined(__i386)  ||  defined(__sparc)  ||  defined(__x86_64)  || \
    defined(__aarch64__))  && \
   (!defined(__GLIBCXX__)  ||  !defined(NCBI_TCHECK))
-#  if defined(__x86_64)  ||  defined(__aarch64__)
+#  if (defined(__x86_64)  &&  !defined(_ILP32))  ||  defined(__aarch64__)
 #    define NCBI_COUNTER_64_BIT
 #  endif
 #  ifdef NCBI_COUNTER_64_BIT
index 492675b4221ffca6e0925b462bd5f05ddc0255fa..a2c361ab1dabaa76cda90498a2ab211ede89841b 100755 (executable)
@@ -28265,7 +28265,7 @@ $as_echo "$as_me: WARNING: $message" >&2;}  ;;
             darwin*:*86*:64 ) vdb_libpath=mac/$vdb_mode/x86_64/lib   ;;
             darwin*:*86*:* )  vdb_libpath=mac/$vdb_mode/fat86/lib    ;;
             darwin*:arm*   )  vdb_libpath=mac/$vdb_mode/arm64/lib    ;;
-            linux*:*86*:64 )  vdb_libpath=linux/$vdb_mode/x86_64/lib ;;
+            linux*:*86*64* )  vdb_libpath=linux/$vdb_mode/x86_64/lib ;;
             linux*:aarch64* ) vdb_libpath=linux/$vdb_mode/arm64/lib  ;;
             * )
                if test -n "$with_vdb"; then
index 644498624f5a3f1a132deec2cb8efe99ad90af20..44493c35646e1e4057bd68840b20e6b94c6571a3 100644 (file)
@@ -7837,7 +7837,7 @@ if test "$with_vdb" != "no" ; then
             darwin*:*86*:64 ) vdb_libpath=mac/$vdb_mode/x86_64/lib   ;;
             darwin*:*86*:* )  vdb_libpath=mac/$vdb_mode/fat86/lib    ;;
             darwin*:arm*   )  vdb_libpath=mac/$vdb_mode/arm64/lib    ;;
-            linux*:*86*:64 )  vdb_libpath=linux/$vdb_mode/x86_64/lib ;;
+            linux*:*86*64* )  vdb_libpath=linux/$vdb_mode/x86_64/lib ;;
             linux*:aarch64* ) vdb_libpath=linux/$vdb_mode/arm64/lib  ;;
             * )
                if test -n "$with_vdb"; then
index f87d335d051e3e8211f7461df92d37e27e8e2a91..d7cf1cf59489a091e90241843869913754a43de6 100644 (file)
@@ -6185,9 +6185,10 @@ void CWGSSeqIterator::x_CreateFeaturesChunk(SWGSCreateInfo& info,
     // select range of feature table rows
     auto range = GetLocFeatRowIdRange();
     auto feat_start = range.first + kFeatPerChunk*index;
-    auto feat_stop = min(range.first+range.second, feat_start+kFeatPerChunk);
+    auto feat_stop = min<TVDBRowId>(range.first+range.second,
+                                    feat_start+kFeatPerChunk);
     range.first = feat_start;
-    range.second = max(feat_start, feat_stop)-feat_start;
+    range.second = max<TVDBRowId>(feat_start, feat_stop)-feat_start;
     // create features
     info.chunk->SetData();
     CSeq_annot::TData::TFtable* main_features = 0;